//package com.example.excel;
//
//import com.example.excel.moudle.TleFenceFzjyAnalysisV2Result;
//import org.apache.poi.ss.usermodel.*;
//import org.apache.poi.ss.util.CellRangeAddress;
//import org.apache.poi.xssf.usermodel.XSSFWorkbook;
//
//import java.io.FileOutputStream;
//import java.io.IOException;
//import java.util.*;
//
//
///**
// * 未取得经营许可擅自从事经营活动车辆-车辆分析结果导出测试
// */
//public class Test1 {
//
//    public static void main(String[] args) {
//
//        List<TleFenceFzjyAnalysisV2Result> dataList = new Test1().getList();
//
//
//        //list写入Excel文件
//        String filePath = "C:\\Users\\Hellow\\Desktop\\kafka\\src\\main\\resources\\新建 XLS 工作表2.xls";
//            try (Workbook workbook = new XSSFWorkbook()) {
//                Sheet sheet = workbook.createSheet("Vehicle Data");
//
//                // 设置标题行样式
//                CellStyle headerStyle = workbook.createCellStyle();
//                headerStyle.setFillForegroundColor(IndexedColors.LIGHT_BLUE.getIndex());
//                headerStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
//                headerStyle.setAlignment(HorizontalAlignment.CENTER);
//
//
//                // 设置标题行
//                Row headerRow = sheet.createRow(0);
//                String[] headers = {"序号", "车牌号", "车牌颜色", "违规经营起止点", "违规经营次数", "是否重点监管"};
//                for (int i = 0; i < headers.length; i++) {
//                    Cell cell = headerRow.createCell(i);
//                    cell.setCellValue(headers[i]);
//                    cell.setCellStyle(headerStyle);
//                }
//
//                // 写入数据
//                int rowNum = 1;
//                int orderId = 1;
//                for (TleFenceFzjyAnalysisV2Result data : dataList) {
//                    Row row = sheet.createRow(rowNum);
//                    row.createCell(0).setCellValue(orderId++);
//                    row.createCell(1).setCellValue(data.getPlateNo());
//                    row.createCell(2).setCellValue(data.getPlateColorName());
//                    row.createCell(5).setCellValue(data.getEmphasisStatusName());
//
//
//
//                    // 合并单元格
//                    int mergeStartRow = row.getRowNum();
//                    int mergeEndRow = mergeStartRow + data.getAreaAnalysisList().size() - 1;
//                    if(mergeStartRow < mergeEndRow){
//                        sheet.addMergedRegion(new CellRangeAddress(mergeStartRow, mergeEndRow, 0, 0));
//                        sheet.addMergedRegion(new CellRangeAddress(mergeStartRow, mergeEndRow, 1, 1));
//                        sheet.addMergedRegion(new CellRangeAddress(mergeStartRow, mergeEndRow, 2, 2));
//
//                        sheet.addMergedRegion(new CellRangeAddress(mergeStartRow, mergeEndRow, 5, 5));
//                    }
//
//                    // 写入cityRoutes数据
//                    for (Map<String, Object> map : data.getAreaAnalysisList()) {
//                        for (Map.Entry<String, Object> entry : map.entrySet()) {
//
//
//
//                            Row routeRow = (rowNum++ == mergeStartRow) ? row : sheet.createRow(rowNum - 1);
//
//                            int rowNum1 = routeRow.getRowNum();
//                            routeRow.createCell(3).setCellValue(entry.getKey());
//                            routeRow.createCell(4).setCellValue(entry.getValue().toString());
//                        }
//                    }
//                }
//                // 调整列宽
//                for (int i = 0; i < headers.length; i++) {
//                    sheet.autoSizeColumn(i);
//
//                }
//
//                // 写入文件
//                try (FileOutputStream outputStream = new FileOutputStream(filePath)) {
//                    workbook.write(outputStream);
//                }
//            } catch (IOException e) {
//                throw new RuntimeException(e);
//            }
//    }
//
//    public List<TleFenceFzjyAnalysisV2Result> getList(){
//        List<TleFenceFzjyAnalysisV2Result> res = new ArrayList<>();
//
//        // 创建一个 TleFenceFzjyAnalysisV2Result 对象示例
//        TleFenceFzjyAnalysisV2Result result = new TleFenceFzjyAnalysisV2Result();
//
//        // 设置属性值
//        result.setId("1");
//        result.setPlateNo("ABC1");
//        result.setPlateColorCode("1");
//        result.setPlateColorName("Blue");
//        result.setScore(0.85);
//        result.setUpdateTime(new Date());
//        result.setCreateTime(new Date());
//        result.setEmphasisStatus(1);
//
//        Map<String, Object> map = new HashMap<>();
//        List<Map<String, Object>> mapList = new ArrayList<>();
//        map.put("1.1", 1);
//        Map<String, Object> map11 = new HashMap<>();
//        map11.put("1.2", 2);
//        mapList.add(map);
//        mapList.add(map11);
//        result.setAreaAnalysisList(mapList);
//
//        TleFenceFzjyAnalysisV2Result result1 = new TleFenceFzjyAnalysisV2Result();
//
//        // 设置属性值
//        result1.setId("1");
//        result1.setPlateNo("ABC2");
//        result1.setPlateColorCode("1");
//        result1.setPlateColorName("Blue");
//        result1.setScore(0.85);
//        result1.setUpdateTime(new Date());
//        result1.setCreateTime(new Date());
//        result1.setEmphasisStatus(1);
//
//        Map<String, Object> map1 = new HashMap<>();
//        List<Map<String, Object>> mapList1 = new ArrayList<>();
//        map1.put("2.1", 1);
//        mapList1.add(map1);
//        result1.setAreaAnalysisList(mapList1);
//
//
//
//
//        TleFenceFzjyAnalysisV2Result result2 = new TleFenceFzjyAnalysisV2Result();
//
//        // 设置属性值
//        result2.setId("1");
//        result2.setPlateNo("ABC3");
//        result2.setPlateColorCode("1");
//        result2.setPlateColorName("Blue");
//        result2.setScore(0.85);
//        result2.setUpdateTime(new Date());
//        result2.setCreateTime(new Date());
//        result2.setEmphasisStatus(1);
//
//        Map<String, Object> map22 = new HashMap<>();
//        List<Map<String, Object>> mapList2 = new ArrayList<>();
//        map22.put("3.1", 1);
//        mapList2.add(map22);
//        Map<String, Object> map23 = new HashMap<>();
//        map23.put("3.2", 1);
//        mapList2.add(map23);
//        Map<String, Object> map24 = new HashMap<>();
//        map24.put("3.3", 1);
//        mapList2.add(map24);
//        result2.setAreaAnalysisList(mapList2);
//
//        res.add(result);
//        res.add(result1);
//        res.add(result2);
//        return res;
//    }
//}
